package com.ruoyi.system.service.impl;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.security.service.TokenService;
import com.ruoyi.system.api.domain.SysDept;
import com.ruoyi.system.api.domain.SysUser;
import com.ruoyi.system.domain.SysOrderSpeed;
import com.ruoyi.system.service.SysOrderSpeedService;
import com.ruoyi.system.mapper.SysOrderSpeedMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.Date;

/**
* @author xdh
* @description 针对表【sys_order_speed(订单进度表)】的数据库操作Service实现
* @createDate 2024-07-04 15:38:14
*/
@Service
public class SysOrderSpeedServiceImpl extends ServiceImpl<SysOrderSpeedMapper, SysOrderSpeed>
    implements SysOrderSpeedService{

    @Autowired
    private TokenService tokenService;

    @Override
    public Boolean createOrder(Integer orderId) {
        SysOrderSpeed sysOrderSpeed = new SysOrderSpeed();
        sysOrderSpeed.setOrderId(orderId);
        sysOrderSpeed.setDeptName(getUser().getDept().getDeptName());
        sysOrderSpeed.setDeptId(getUser().getDept().getDeptId().intValue());
        sysOrderSpeed.setCreTime(new Date());
        sysOrderSpeed.setPushLevel(0);
        sysOrderSpeed.setStatus(1);
        sysOrderSpeed.setUserId(getUser().getUserId().intValue());
        sysOrderSpeed.setUserName(getUser().getUserName());
        return this.save(sysOrderSpeed);
    }

    @Override
    public Boolean create(Integer level,Integer orderId,Date date) {
        SysOrderSpeed sysOrderSpeed = new SysOrderSpeed();
        sysOrderSpeed.setOrderId(orderId);
        sysOrderSpeed.setDeptName(getUser().getDept().getDeptName());
        sysOrderSpeed.setDeptId(getUser().getDept().getDeptId().intValue());
        sysOrderSpeed.setCreTime(date);
        sysOrderSpeed.setPushLevel(level);  //市1 区2 派出所3
        sysOrderSpeed.setStatus(1);
        sysOrderSpeed.setUserId(getUser().getUserId().intValue());
        sysOrderSpeed.setUserName(getUser().getUserName());
        return this.save(sysOrderSpeed);
    }



//    @Override
//    public Boolean checkOrder(Date date,Integer orderId) {
//        SysOrderSpeed sysOrderSpeed = new SysOrderSpeed();
//        sysOrderSpeed.setOrderId(orderId);
//        sysOrderSpeed.setDeptName(getUser().getDept().getDeptName());
//        sysOrderSpeed.setDeptId(getUser().getDept().getDeptId().intValue());
//        sysOrderSpeed.setCreTime(date);
//        sysOrderSpeed.setPushLevel(3);
//        sysOrderSpeed.setStatus(1);
//        sysOrderSpeed.setUserId(getUser().getUserId().intValue());
//        sysOrderSpeed.setUserName(getUser().getUserName());
//        return this.save(sysOrderSpeed);
//    }


    public SysUser getUser(){
        return tokenService.getLoginUser().getSysUser();
    }


}




